God Class (GC)

Description:

In a good object-oriented design the intelligence of a system is uniformly distributed among the top-level classes. This design flaw refers those classes that tend to centralize the intelligence of the system. An instance of a god-class performs most of the work, delegating only minor details to a set of trivial classes and using the data from other classes. This has a negative impact on the reusability and the understandability of that part of the system. This design problem can be partially assimilated with Fowler's "Large Class" bad-smell.

Refactoring: